A Constraint-Based Approach to Verification of Programs with Floating-Point Numbers

نویسندگان

  • Carlos Acosta
  • Martine Ceberio
  • Christian Servin
چکیده

Software plays an important role in our daily lives. There is software in our cell phones, and in our workplaces, just to mention a few examples. We want reliable software. This is specially desired in critical software such as software in airplanes, software in medical applications, and software in nuclear plants. Software Validation and Verification help us to achieve reliable software. Verification refers to proving that a system satisfies its specifications. Constraint Programming is an emerging field and has been successfully used in scheduling problems and circuit designs among others. Its use in verification of software is still being researched and it is being applied to automatically generate test cases and to show the conformity of software to its specification. In this work, we survey constrained-based verification techniques and we propose a different approach to translate code construct where existing approaches made use of guarded constraints. In addition, we also describe a process to solve CSPs of the form ¬A ∧ B. COMMON VERIFICATION TECHNIQUES

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Exploiting Binary Floating-Point Representations for Constraint Filtering

Floating-point computations are quickly finding their way in the design of safetyand mission-critical systems, despite the fact that designing floating-point algorithms is significantly more difficult than designing integer algorithms. For this reason, verification and validation of floating-point computations is a hot research topic. An important verification technique, especially in some indu...

متن کامل

Exploiting Binary Floating-Point Representations for Constraint Propagation

Floating-point computations are quickly finding their way in the design of safetyand mission-critical systems, despite the fact that designing floating-point algorithms is significantly more difficult than designing integer algorithms. For this reason, verification and validation of floating-point computations is a hot research topic. An important verification technique, especially in some indu...

متن کامل

Proceedings of the 1 st workshop on Constraints in Software Testing , Verification and Analysis ( CSTVA ’ 06

This paper describes the main results of the V3F project (which stands for “Validation and verification of software handling floating-point numbers”). The goal of this project was to provide tools to support the verification and validation process of programs with floatingpoint numbers. We did investigate two directions: structural testing of a program with floating-point numbers and verificati...

متن کامل

Approximating floating-point operations to verify numerical programs∗

The verification of programs performing floating-point computations is a key issue in the development of critical software. Reasoning on floatingpoint computations is a tricky task that requires dedicated tools: floatingpoint arithmetic is not correctly handled by solvers over the reals. Several methods have been developed in order to verify programs working with floating-point numbers. Some of...

متن کامل

Refining Abstract Interpretation-based Approximations with Constraint Solvers

Programs with floating-point computations are tricky to develop because floating-point arithmetic differs from real arithmetic and has many counterintuitive properties. A classical approach to verify such programs consists in estimating the precision of floating-point computations with respect to the same sequence of operations in an idealized semantics of real numbers. Tools like Fluctuat—base...

متن کامل

Refining Abstract Interpretation-based Approximations with a Floating-point Constraint Solver

Floating-point arithmetic differs from real arithmetic, which makes programming with floating-point numbers tricky. Estimating the precision of a floating-point computation in a program, i.e., estimating the difference with the result of the same sequence of operations in an idealized real number semantics, is then necessary. Tools like Fluctuat, based on abstract interpretation, have been desi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008